<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<!-- <link rel="stylesheet" type="text/css" href="css/help-center.css" /> -->
		<title>我的购物车</title>

		<style>
			* {
				margin: 0;
				padding: 0;
				font-family: "微软雅黑";
				list-style: none;
				color: #666;
				text-decoration: none;
				font-size: 14px;
			}
			body {
				background: #f5f5f5;
				height: 100%;
			}
			.header{
			font-size: 12px;
			border-bottom: 2px solid #ff6700;
			background: #fff;
			color: #b0b0b0;
			position: relative;
			z-index: 20;
				height: 100px;
			}
				.header .container {
				position: relative;
				width: 1226px;
				margin-right: auto;
				margin-left: auto;
			}
			.header .container .header-logo {
				width: 93px;
				margin-top: 26px;
			}

			.logo {
				width: 48px;
				height: 48px;
				position: relative;
				display: block;
				width: 55px;
				height: 55px;
				overflow: hidden;
				background-color: #ff6700;
				}
				.header-title {
				float: left;
				margin-top: 26px;
				font-size: 12px;
				}
				.topbar-info {
				margin-top: 30px;
				line-height: 40px;
			}
			.link {
			padding: 0 5px;
			color: #757575;
			text-decoration: none;
			}
			.hid {
				overflow: hidden;
			}
			.left {
				float: left;
			}
			.box_head{
			position: relative;
			margin: 0;
			height: 50px;
			font-size: 30px;
			font-weight: 400;
			color: #757575;
			border-top: 1px solid #e0e0e0;
			}
			.box_head span{
			position: absolute;
			top: -20px;
			left: 372px;
			height: 40px;
			width: 482px;
			line-height: 40px;
			text-align: center;
			display: block;
			background-color: #f5f5f5;
			font-size: 30px;
			}
			#box {
				width:1240px;
				margin: 20px auto;
			}
			#box ul {
				margin-right: -14px;
				overflow: hidden;
			}
			#box li {
				width: 234px;
				float: left;
				margin-right: 14px;
				padding: 24px 0 20px;
				background: #FFF;
				text-align: center;
				position: relative;
				cursor: pointer;
				margin-bottom:14px;
			}
			.pro_img {
				width: 150px;
				height: 150px;
				margin: 0 auto 18px;
			}
			.pro_name {
				display: block;
				text-overflow: ellipsis;
				white-space: nowrap;
				overflow: hidden;
				font-weight: 400;
			}
			.pro_name a {
				color: #333;
			}
			.pro_price {
				color: #ff6700;
				margin: 10px;
			}
			.pro_rank {
				color: #757575;
				margin: 10px;
			}
			#box li:hover .add_btn {
				display: block;
			}
			#box li:hover .pro_rank {
				opacity: 0;
			}
			#box li .add_btn:hover {
				background-color: #f60;
				color: white;
			}
			

			
			.add_btn {
				height: 22px;
				position: absolute;
				width: 122px;
				bottom: 28px;
				left: 50%;
				margin-left: -61px;
				line-height: 22px;
				display: none;
				color: #F60;
				font-size: 12px;
				border: 1px solid  #f60;
			}
			
			.car {
				width: 1240px;
				margin: 20px auto;
				background: #FFF;
			}
			.car .check{
				width: 50px;
			
			}
			.car .check i{
				color: #fff;
				display: inline-block;
				
				width: 18px;
				height: 18px;
				line-height: 18px;
				border: 1px solid #e0e0e0;
				margin-left: 24px;
				background-color: #fff;
				font-size: 16px;
				text-align: center;
				vertical-align: middle;
				position: relative;
				top: -1px;
				cursor: pointer;
				font-family: "iconfont";
			}
			.i_acity {

				border-color: #ff6700 !important;
				background-color: #ff6700 !important;
			}
			.car .img {
				width: 190px;
			}
			.car .img img {
				display: block;
				width: 80px;
				height: 80px;
				margin: 3px auto;
			}
			.car .name {
				width: 300px;
			}
			.car .name span {
				line-height: 1;
				margin-top: 8px;
				margin-bottom: 8px;
				font-size: 18px;
				font-weight: normal;
				text-overflow: ellipsis;
				white-space: nowrap;
				overflow: hidden;
			}
			.car .price {
				width: 144px;
				text-align: right;
				padding-right: 84px;
			}
			.car .price span {
				color: #ff6700;
				font-size: 16px;
			}
			.car .number{
				width: 150px;
			}
			.car .subtotal{
				width: 130px;
				
			}
			.car .ctrl {
				width: 105px;
				padding-right:25px;
				text-align: center;
			}
			.car .ctrl a {
				font-size: 20px;
				cursor: pointer;
				display: block;
				width: 26px;
				height: 26px;
				margin: 30px auto;
				line-height: 26px;
			}
			.car .ctrl a:hover {
				color: #FFF;
				background: #ff6700;
				border-radius: 50%;
			}
			.head_row {
				height: 70px;
				line-height: 70px;
			}
			.head_row, .row {
				border-bottom: solid 1px #e0e0e0;
			}
			.row {
				height: 86px;
				line-height:86px;
				padding: 15px 0;
				margin: 0px;
			}
			#sum_area{
				width:1240px;
				height: 60px;
				background: white;
				margin: 20px auto;
			}
			#sum_area #pay{
				width:250px;
				height:60px;
				text-align: center;
				float: right;
				line-height: 60px;
				font-size: 19px;
				background: #FF4B00;
				color: white;
			}
			#sum_area #pay_amout{
				width:250px;
				height:60px;
				text-align: center;
				float: right;
				line-height: 60px;
				font-size: 16px;
				color:#FF4B00 ;
			}
			#sum_area #pay_amout #price_num{
				width:100px;
				height: 60px;
				font-size: 25px;
				color:#FF4B00 ;
			/*	float: left;*/
			}
			
			.item_count_i{
				height: 85px;
				width:10%;
				/*border: 1px solid black;*/
				float: left;
				margin-right: 25px;
			}
			.num_count{
				width:150px;
				height:40px;
				border: 1.2px solid #E0E0E0;
				float:right;
				margin-top: 21px;
			
			}
			.count_i{
				width:30%;
				height:40px;
				line-height: 40px;
				float: left;
				text-align: center;
				font-size:21px;
				color: #747474;
			}
			.count_i:hover{
				width:30%;
				height:40px;
				line-height: 40px;
				float: left;
				text-align: center;
				font-size:21px;
				color: #747474;
				background: #E0E0E0;
				cursor: pointer;
			}
			.c_num{
				width:40%;
				height:40px;
				line-height: 40px;
				float: left;
				text-align: center;
				font-size:16px;
				color: #747474;
			}
			.count_d{
				width:30%;
				height:40px;
				line-height: 40px;
				float: left;
				text-align: center;
				font-size:25px;
				color: #747474;
			}
			.count_d:hover{
				width:30%;
				height:40px;
				line-height: 40px;
				float: left;
				text-align: center;
				font-size:25px;
				color: #747474;
				background: #E0E0E0;
				cursor: pointer;
			}
			.i_acity2 {
				border-color: #ff6700 !important;
				background-color: #ff6700 !important;
			}
		</style>
	</head>
<body>
		<img src="static/image/Logo.png" >
		<div id="car" class="car">
            <div class="head_row hid">
                <div class="check left"> <i onclick="checkAll()">√</i></div>
                <div class="img left">&nbsp;&nbsp;全选</div>
                <div class="name left">商品名称</div>
                <div class="price left">单价</div>
                <div class="number left">数量</div>
                <div class="subtotal left">小计</div>
                <div class="ctrl left">操作</div>
            </div>
		</div>
        <div id="sum_area">
            <div id="pay" onclick="abc()">去结算</div>
            <div id="pay_amout">合计：<span id="price_num">0</span>元</div>
        </div>
		<script>
			function abc(){
				window.location.href='shapping.html'
			}
			//进行价格合计
			function getAmount() {
				ns = document.querySelector('#pay_amout');
				sum = 0;
				var list = document.querySelectorAll('.subtotal');
				for(var i = 1; i < list.length; i++){
					var num = parseInt(list[i].querySelector('span').innerHTML.slice(0, -1))
					sum += num;
				}
				//选中框
				document.getElementById("price_num").innerText = sum;
			}


			// 获取存储在localStorage中的值
            const cart = localStorage.getItem('cart');
            const data = JSON.parse(cart);
            // 将对象转换为数组
            const dataArray = Array.from(data);

            var oCar = document.getElementById("car");

			var number = 0;//初始化商品数量

            dataArray.forEach(item => {
				number++;
                var oDiv = document.createElement("div");
                oDiv.className = "row hid";
                oDiv.innerHTML += '<div class="check left"> <i class="i_check" id="i_check" οnclick="i_check()" >√</i></div>';
                oDiv.innerHTML += '<div class="img left"><img src="' + item["imgUrl"] + '" width="80" height="80"></div>';
                oDiv.innerHTML += '<div class="name left"><span>' + item["proName"] + '</span></div>';
                oDiv.innerHTML += '<div class="price left"><span>' + item["proPrice"] + '</span>元</div>';
                oDiv.innerHTML +=' <div class="item_count_i"><div class="num_count"><div class="count_d">-</div><div class="c_num">1</div><div class="count_i">+</div></div> </div>'
                oDiv.innerHTML += '<div class="subtotal left"><span>' + item["proPrice"] + '元</span></div>'
                oDiv.innerHTML += '<div class="ctrl left"><a href="javascript:;">×</a></div>';
                oCar.appendChild(oDiv);
                var flag = true;
                var check = oDiv.firstChild.getElementsByTagName("i")[0];
                check.onclick = function() {
                    // console.log(check.className);
                    if (check.className == "i_check i_acity") {
                        check.classList.remove("i_acity");

                    } else {
                        check.classList.add("i_acity");
                    }
                    getAmount();
                }
                var delBtn = oDiv.lastChild.getElementsByTagName("a")[0];
                delBtn.onclick = function() {
                    var result = confirm("确定删除吗?");
                    if (result) {
                        oCar.removeChild(oDiv);
                        number--;
                        getAmount();
                    }
                }
                var i_btn = document.getElementsByClassName("count_i");
                for (var k = 0; k < i_btn.length; k++) {
                    i_btn[k].onclick = function() {
                        bt = this;
                        //获取小计节点
                        at = this.parentElement.parentElement.nextElementSibling;
                        //获取单价节点
                        pt = this.parentElement.parentElement.previousElementSibling;
                        //获取数量值
                        node = bt.parentNode.childNodes[1];
                        console.log(node);
                        num = node.innerText;
                        num = parseInt(num);
                        num++;
                        node.innerText = num;
                        //获取单价
                        price = pt.innerText;
                        price = price.substring(0, price.length - 1);
                        //计算小计值
                        at.innerHTML = `<span>${price * num + "元"}</span>`;
                        //计算总计值
                        getAmount();
                    }
                }
                //获取所有的数量减号按钮
                var d_btn = document.getElementsByClassName("count_d");
                for (k = 0; k < i_btn.length; k++) {
                    d_btn[k].onclick = function() {
                        bt = this;
                        //获取小计节点
                        at = this.parentElement.parentElement.nextElementSibling;
                        //获取单价节点
                        pt = this.parentElement.parentElement.previousElementSibling;
                        //获取c_num节点
                        node = bt.parentNode.childNodes[1];
                        num = node.innerText;
                        num = parseInt(num);
                        if (num > 1) {
                            num--;
                        }
                        node.innerText = num;
                        //获取单价
                        price = pt.innerText;
                        price = price.substring(0, price.length - 1);
                        //计算小计值		
                        at.innerHTML = `<span>${price * num + "元"}</span>`;
                        //计算总计值
                        getAmount();
                    }
                }

                delBtn.onclick = function() {
                    const delName = delBtn.closest('.row').querySelector('.name span').innerHTML;
                    var result = confirm("确定删除吗?");
                    if (result) {
                        oCar.removeChild(oDiv);
                        number--;
                        getAmount();

                        const cart = localStorage.getItem('cart');
                        const data = JSON.parse(cart);
                        // 将对象转换为数组
                        var dataArray = Array.from(data);
						dataArray = dataArray.filter(function(e){
							return e["proName"] !== delName
						});
						localStorage.setItem('cart', JSON.stringify(dataArray));
                    }
                }
            });

			getAmount();
		</script>
	</body>
</html>
